home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 98 / Skunkware 98.iso / src / net / readline-2.0mg.tar.gz / readline-2.0mg.tar / readline-2.0mg / tilde.h < prev    next >
C/C++ Source or Header  |  1994-08-03  |  1KB  |  39 lines

  1. /* tilde.h: Externally available variables and function in libtilde.a. */
  2.  
  3. #if !defined (__TILDE_H__)
  4. #  define __TILDE_H__
  5.  
  6. /* Function pointers can be declared as (Function *)foo. */
  7. #if !defined (__FUNCTION_DEF)
  8. #  define __FUNCTION_DEF
  9. typedef int Function ();
  10. typedef void VFunction ();
  11. typedef char *CPFunction ();
  12. typedef char **CPPFunction ();
  13. #endif /* _FUNCTION_DEF */
  14.  
  15. /* If non-null, this contains the address of a function to call if the
  16.    standard meaning for expanding a tilde fails.  The function is called
  17.    with the text (sans tilde, as in "foo"), and returns a malloc()'ed string
  18.    which is the expansion, or a NULL pointer if there is no expansion. */
  19. extern CPFunction *tilde_expansion_failure_hook;
  20.  
  21. /* When non-null, this is a NULL terminated array of strings which
  22.    are duplicates for a tilde prefix.  Bash uses this to expand
  23.    `=~' and `:~'. */
  24. extern char **tilde_additional_prefixes;
  25.  
  26. /* When non-null, this is a NULL terminated array of strings which match
  27.    the end of a username, instead of just "/".  Bash sets this to
  28.    `:' and `=~'. */
  29. extern char **tilde_additional_suffixes;
  30.  
  31. /* Return a new string which is the result of tilde expanding STRING. */
  32. extern char *tilde_expand ();
  33.  
  34. /* Do the work of tilde expansion on FILENAME.  FILENAME starts with a
  35.    tilde.  If there is no expansion, call tilde_expansion_failure_hook. */
  36. extern char *tilde_expand_word ();
  37.  
  38. #endif /* __TILDE_H__ */
  39.